草庐IT

c++ - Qt::WA_DeleteOnClose

全部标签

c++ - 无法在 Windows 上的 Qt Creator 中选择 GDB

我在Windows上的QtCreator中选择了GDB而不是CDB作为调试器:但是当我开始调试一个程序时,它失败并出现这个错误:Unabletocreateadebuggerengineofthetype"Noengine"如果我从组合中选择CDB,它就会起作用。为什么会出现此错误,我该如何解决?如果GDB在组合框中,我假设我确实安装了GDB,对吧?编辑:我知道问题出在哪里,但仍然不知道如何解决:[在新选项卡中打开上图以查看全分辨率。]它为GDB显示“无法识别”。编辑2:我只记得我使用的是MSVC编译器,Qt库是为MSVC编译的:也许这就是原因?虽然GDB应该能够调试任何可执行文件,而

windows - qmake工程中如何检测Qt是OpenGL还是Angle版本?

我想检测Qt版本是否在Windows上使用OpenGL或Angle,以便nmakeinstall正常工作。这就是我现在所拥有的,来自.pro文件的片段:GLTMP=$$[QT_HOST_PREFIX]contains(GLTMP,".*_opengl"){message(DetectedOpenGL)}else{message(DidnotdetectOpenGLsoassumingAngle)#addAngleDLLfilestoINSTALLS}现在这仅在QT_HOST_PREFIX实际上包含OpenGL版本的_opengl时才有效,但不是Angle版本(例如C:\Qt\5.2.1

c++ - 无法加载qt平台插件windows

当我编译项目然后在我的电脑上工作时没有错误。但是每当我在另一台计算机上运行该项目时,就会发生错误 最佳答案 您应该将qwindows.dll放在可执行文件旁边的名为platforms的目录中。尝试使用TheWindowsDeploymentTool部署您的应用程序可以在QTDIR/bin/windeployqt.exe中找到。它会自动将所有必需的文件放入您的应用程序目录中。打开命令提示符并将路径添加到您的Qt目录及其bin文件夹到PATH变量,如:setPATH=path\to\Qt\bin接下来以您的应用程序路径作为参数运行win

c - 我想打开新的 cmd 提示符并从 cmd 提示符插入参数

我尝试启动cmd以打开新的cmd提示符,但我无法在新的cmd中提供命令行参数..我试过以下system("startcmd")>>"system("C:\\Windows\\System32\\ipconfig");不工作system(startsystem("C:\\Windows\\System32\\ipconfig"));不工作 最佳答案 正如DipakDDesai所说,您可以简单地使用system("cmd/cstartC:\\Windows\\System32\\ipconfig");但是如果您在非控制台应用程序中执行此

c - C 中的 Visual Studio 错误,0xfefefefe 处的未处理异常

我正在学习如何在VisualStudio中编写C,这是我的代码,#includeintmain(){charme[20];printf("Whatisyourname?");scanf_s("%s",me);printf("darngladtomeetyou,%s!\n",me);return(0);}现在,在输入所有内容后,我会弹出一个错误消息“Project14.exe中0xFEFEFEFE处未处理的异常:0xC00001A5:已检测到无效的异常处理程序例程(参数:0x00000003)” 最佳答案 您使用的scanf_s()有

仅在 Windows 中的 C 程序编译器警告 (MinGW-w64)

我构建了一个多语言软件图像处理程序,并使其普遍适用于MacOSX和Ubuntu的二进制文件。二进制文件已经在各自的操作系统上进行了测试,一切正常。我最近还尝试发布适用于Windows(64位)的二进制文件,但是当我创建共享库(dll)文件时,GCC(通过MinGW-w64)编译器针对其中一个C程序发出了警告。这在MacOSX或Ubuntu中没有发生。以下是C文件中的警告和相应的代码行:warning:passingargument3of'_beginthreadex'fromincompatiblepointertype[enabledbydefault]第464行:ThreadLis

c++ - socket编程与windows和unix/linux的混淆

您好,我正在尝试使用C++进行套接字编程。我需要确认或拒绝这个逻辑。我认为socket.h头文件是为UNIX系统设计的,而对于Windows,一切都是通过winsock.h完成的。这是正确的吗? 最佳答案 对于Windows,您需要winsock2.h和ws2tcpip.h。在Linux上,您需要sys/socket.h和sys/types.h用于套接字函数和netinet/in.h用于IP相关结构。其他一些区别:Windows使用SOCKET作为套接字描述符,而Linux使用intWindows有closesocket()来关闭套

c - 如何运行 KMDF 驱动程序?

我已经为本地内核调试设置了我的系统,因为我只打算编写一个具有两个函数的简单驱动程序。我刚刚构建了一个简单的“helloworld”类型的驱动程序,看看我是否能让我的驱动程序运行,目前我已经禁用了驱动程序签名验证并启用了内核Debug模式,使用:bcdedit/debugon我还使用Windows测试商店的证书对我的驱动程序进行了测试签名?或者在VS2015中叫什么:)现在,我的问题是我在构建后通过右键单击.inf文件来安装我的驱动程序,但是我在我的驱动程序(下面的代码)中没有看到任何调试打印的输出,所以这让我相信我的驱动程序根本没有运行?或者是什么?我在安装驱动程序的机器上更改了Com

windows - 在已安装的应用程序中使用 Qt 帮助文件

我开发了一个windows的Qt应用程序,帮助文件是用qhc集合文件生成的qch格式的。使用QHelpEngine将帮助嵌入到应用程序中。帮助文件与应用程序可执行文件放在同一文件夹中,这非常适合开发构建。但是当我们使用WiX安装程序在“ProgramFiles”中部署应用程序时,文档有效但搜索功能失败,我收到警告:virtualvoidfulltextsearch::clucene::QHelpSearchIndexWriter::run():FailedbecauseofCLuceneexception.在开发版本中,CLucene似乎在帮助文件夹中创建了一些索引文件。这里不能,因为

c - Microsoft 编译器下 _rdrand_step 内在函数的可用性?

根据微软的x64(amd64)IntrinsicsList,Microsoft为RDRAND提供了一个内在函数:_rdrand16_step_rdrand32_step_rdrand64_step但是,该页面并未讨论检测内在函数的可用性。有一个带有[2]的脚注,但它表示它仅适用于IntelCPU。我有两个问题。首先,我如何检测内在函数的可用性。也就是说,我应该使用什么预处理器宏来保护对say_rdrand64_step的调用。其次,如何在AMDCPU下访问RDRAND。根据AMD手册,AMD也提供。(更幽默的是,Microsoft将页面命名为amd64IntrinsicList。为什么